Jesus did not forbid any oath
Jesus Christ never forbade oaths. What he discouraged doing was making an oath to do or not to do something in the future. The reason being that future circumstances were out of our control. Since we don't always have the power to fulfill our promises we could sin by committing perjury.
I think that this is what Christ meant, because Jesus gave this command, in what relates to a popular proverb in which people were talking about promises taking place in the future. We know that this old proverb referred to the future because it exhorted us by saying "perform unto the Lord your oaths". Verse 36 makes it clear, when Jesus, giving the reason for his command says: "because thou canst not make one hair white or black". It is to say: because you have not power over the circumstances, and may forswear.
Again, ye have heard that it hath been said by them of old time:
Thou shalt not forswear thyself, but shalt
perform unto the Lord thine oaths. 34 But I say unto you: Swear not at all; neither by heaven, for it is
God's throne; 35 nor by the Earth,
for it is his footstool; neither by
In the following passages, we see that not only God allows to swear, but also exhorts his servants to swear by His name. Even Paul asked for an oath from Thessalonians.
"Thou shalt fear the LORD thy God, and serve him, and shalt swear by his name." ( Dt 6:13 )
"Thou shalt fear the LORD thy God; him shalt thou serve, and to him shalt thou cleave, and swear by his name." ( Dt 10:20 )
"But the king shall rejoice in God; every one that sweareth by him shall glory; but the mouth of them that speak lies shall be stopped." ( Psal 63:11 )
"That he who blesseth himself in the Earth shall bless himself in the God of truth; and he that sweareth in the Earth shall swear by the God of truth; because the former troubles are forgotten, and because they are hid from mine eyes." ( Isa 65:16 )
"And it shall come to pass, if they will diligently learn the ways of my people, to swear by my name: The LORD liveth; as they taught my people to swear by Baal; then shall they be built in the midst of my people." ( Jer 12:16 )
"I charge you by the Lord that this epistle be read unto all the holy brethren." ( I Thes 5:27 )
It is not logical to think that Jesus "realized" that the authorization, and even the exhortation to swear by God, that appears in several passages of the Old Testament, was a "mistake" of the angel who revealed these things to Moses and the prophets. It is even much less logical to think that God has an opinion, and Jesus has another, contrary to God's. Neither is it logical to think that God had an opinion in the past, but "now" has changed his mind, because he found a "better" opinion.
If the Scriptures clearly exhort, to swear by God, it is evident that it is not a sin to swear by God, but on the contrary it is something to be commended, if we follow through and do it, a) sensibly, and b) for a worthy reason. Sure enough, to be swearing for unimportant things is to use in vain the name of the Lord. An example of swearing using God's name in vain is when someone swears about the size of the fish that escaped.
Besides, one thing is to swear that something is true or false, and a very different thing is to swear into the future, a time of which we have no control. The first oath is in our control, the second one is not.
If a Christian is asked to swear if he is going to say the truth, or did say the truth, I don't see any reason not to swear, as long as it is an important issue.
There are cases where God himself requires an oath, as in Ex 22:10-11. God is not going to command something that later Jesus will contradict. Nor will God command anyone to sin, by commanding them to swear if swearing were a sin.
"10 If a man deliver unto his neighbour an ass, or an ox, or a sheep, or any beast, to keep; and it die, or be hurt, or driven away, no man seeing it, 11 then shall an oath of the LORD be between them both, that he hath not put his hand unto his neighbour's goods; and the owner of it shall accept thereof, and he shall not make it good." ( Ex 22:10-11 )
Even in Mt 26:63 we see an oath is asked from Jesus and he accepts it.
"62 And the high priest arose, and said unto him: Answerest thou nothing? What is it which these witness against thee? 63 But Jesus held his peace. And the high priest answered and said unto him: I adjure thee by the living God, that thou tell us whether thou be the Christ, the Son of God. 64 Jesus saith unto him: Thou hast said; nevertheless I say unto you: Hereafter shall ye see the Son of man sitting on the right hand of power, and coming in the clouds of heaven." ( Mt 26:62-64 )
As we read, Jesus did not answer rejecting the oath, but instead, as the high priest asks for an oath, Jesus answers him: Thou hast said. It is evident that it is not a sin to accept an oath. If it were a sin or if Jesus had prohibited swearing, he was not going to accept it from the high priest.
There are brethren that are victims of the pressures of tradition, who think that it is a sin to swear. When asked to swear or take an oath they reject it appealing to a simplistic euphemism, stating "they say before God", or "I say in God's presence". They don't realize that once the name of God is involved in a declaration, or an assertion, it is equivalent to an oath, for celestial effects. Even Paul swears in Ga 1:20 when he writes to the brothers.
"Now the things which I write unto you, behold, before God, I lie not." ( Ga 1:20 )
When Paul said "before God", he is using God as a witness of what he is saying, therefore, it is exactly like swearing. Only we don't want to call it swearing. The above demonstrate that making an oath has never been forbidden. Certainly Paul was not going to play word games by juggling words.